
# 列表推导式
"""
概念 ： 能快速生成一个新列表的一种写法、
作用 ： 就是快速生成一个列表 ，比较简单的列表
格式 ： [expB for x in iterable expA ]
说明 ：
    1. 按照执行顺序来说 ，先执行for循环体 ，再执行expA ,最后执行expB.
    2. expA 是一个可选项 ，可以省略 。
    3. expA 可以一个条件语句，也可以是循环
    4. expB 可以是一个值 ，也可以是一个表达式 ，也可以是一个函数 。
"""

# 需求1 ：生成一个0~9的数的列表
lst = []
for x in range(0,10):
    lst.append(x)
print(lst)


print([x for x in range(0,10)])

# 需求2 ： ：生成一个0~9的数的列表 ，要求的是奇数 。
lst = []
for x in range(0,10):
    if x % 2:
        lst.append(x)
print(lst)

print([x for x in range(0,10) if x % 2])

lst = []
for x in range(1,3):
    for y in ['x', 'y', 'z']:
        lst.append(y+str(x))
print(lst)

lst4 = [y+str(x) for x in range(1,3) for y in ['x','y','z']]
print(lst4)

